package com.itheima.a01mathdemo01;

/***
 *@title MathDemo01
 *@description <TODO description class purpose>
 *@author 12468
 *@version 1.0.0
 *@create 2024-11-11 23:59
 **/
public class MathDemo01 {
    public static void main(String[] args) {
        /**
         * public static int abs(int a)					// 返回参数的绝对值
         * public static double ceil(double a)				// 返回大于或等于参数的最小整数
         * public static double floor(double a)			// 返回小于或等于参数的最大整数
         * public static int round(float a)				// 按照四舍五入返回最接近参数的int类型的值
         * public static int max(int a,int b)				// 获取两个int值中的较大值
         * public static int min(int a,int b)				// 获取两个int值中的较小值
         * public static double pow (double a,double b)	// 计算a的b次幂的值
         * public static double random()					// 返回一个[0.0,1.0)的随机值
         */

        // 取绝对值
        System.out.println(Math.abs(88)); // 88
        System.out.println(Math.abs(-88)); // 88
        /**
         * bug:
         * 以 int 类型为例，取值范围：-2147483648 ~ 2147483647
         * 如果没有正数与负数对应，那么传递负数结果有误
         * 防止出现以上问题，可以使用 absExact 如果超出限制报错
         */
        System.out.println(Math.abs(-2147483648)); // -2147483648
        System.out.println(Math.abs(-2147483647)); // 2147483647

        // 想上取整
        System.out.println(Math.ceil(13.34)); // 14
        System.out.println(Math.ceil(13.64)); // 14
        System.out.println(Math.ceil(-13.34)); // -13
    }
}
